﻿using System;

namespace System
{
	[Serializable]
	sealed class ArgumentNullOrEmptyException : ArgumentException
	{
		// Methods
		public ArgumentNullOrEmptyException()
			: base(DefaultMessage("")) { }
		public ArgumentNullOrEmptyException(string paramName)
			: base(DefaultMessage(paramName), paramName) { }
		public ArgumentNullOrEmptyException(string message, Exception innerException)
			: base(message, innerException) { }
		public ArgumentNullOrEmptyException(string paramName, string message)
			: base(paramName, message) { }
		public ArgumentNullOrEmptyException(string paramName, string message, Exception innerException)
			: base(paramName, message, innerException) { }
		protected ArgumentNullOrEmptyException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)
			: base(info, context)
		{
		}

		private static string DefaultMessage(string paramName)
		{
			return global::Loc.GetErrorString("Exception_ArgumentEmptyOrNull", paramName);
		}
	}
}
